home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple II Magazines (DO)
/
Softdisk Magazette Volume 2, No. 01 (1982-09)(Softdisk)(Side B).zip
/
Softdisk Magazette Volume 2, No. 01 (1982-09)(Softdisk)(Side B).do
/
ROOTS.&.PREFIXES.bas
< prev
next >
Wrap
BASIC Source File
|
1996-12-24
|
4KB
|
158 lines
10 TEXT
20 HOME
30 D$ = CHR$(4)
40 OP$ = D$ +"OPEN "
50 RD$ = D$ +"READ "
60 DIM A$(33,10),B$(33,10),C$(33),D$(33,10)
70 INVERSE : GOSUB 1300
80 PRINT "ON WHICH SHEET WOULD YOU LIKE TO BE"
90 PRINT "TESTED:"
100 PRINT "1. A- THROUGH BI-
110 PRINT "2. BIBLI- THROUGH CRESC-
120 PRINT "3. CUM- THROUGH FID-"
130 PRINT "4. FILI- THROUGH GYRO-
140 PRINT "5. HAL- THROUGH LOG-
150 PRINT "6. LUC- THROUGH NOUNC-
160 PRINT "7. ONYM- THROUGH RE-
170 PRINT "8. REG- THROUGH VOL-
180 POKE -16368,0
182 G = PEEK( -16384) -176
190 IF G <1 OR G >8 THEN 182
200 GOSUB 1300
202 X = 0
204 PRINT "HERE IS A SNEAK PREVIEW OF SOME WORDS"
205 POKE 34,1
206 NORMAL
210 PRINT OP$;"ROOT ";G
220 PRINT RD$;"ROOT ";G
225 INVERSE
230 X = X +1
240 Z = 0
250 Z = Z +1
260 INPUT A$(X,Z)
270 IF A$(X,Z) = "X" THEN 300
280 IF A$(X,Z) = "XZX" THEN 370
290 GOTO 250
300 Z = 0
310 Z = Z +1
320 INPUT B$(X,Z)
330 IF B$(X,Z) = "XXX" OR B$(X,Z) = "X" THEN 350
340 GOTO 310
350 L$ = LEFT$(A$(X,1) +" ",15) + LEFT$(B$(X,1) +" ",12) + LEFT$(B$(X,2) +" ",12)
355 PRINT L$
360 GOTO 230
370 XX = X -1: PRINT D$;"CLOSE ROOT ";G
380 FOR X = 1 TO XX:C = INT( RND(8) *XX) +1
390 FOR Z = 1 TO 10
400 R$ = A$(X,Z):A$(X,Z) = A$(C,Z):A$(C,Z) = R$
410 R$ = B$(X,Z):B$(X,Z) = B$(C,Z):B$(C,Z) = R$
420 NEXT Z
430 NEXT X
440 PRINT
450 FOR Z = 1 TO XX
460 POKE -16368,0
470 GOSUB 1300
480 DE$ = ""
490 PRINT "QUESTION #";Z
500 PRINT R;" RIGHT"
510 PRINT W;" WRONG"
520 C = INT( RND(8) *6) +1
530 IF A$(Z,C) = "X" OR A$(Z,C) = "" THEN 520
540 PRINT : PRINT : PRINT TAB( 15);A$(Z,C)
550 PRINT : PRINT : PRINT
560 GOSUB 1360
570 PRINT : PRINT
580 IF DE$ = "" THEN 620
590 FOR Y = 1 TO 5
600 IF DE$ = B$(Z,Y) THEN 740
610 NEXT Y
620 PRINT "WRONG": FOR PQ = 1 TO 300: NEXT PQ
630 W = W +1
640 C$(W) = A$(Z,C)
650 FOR Y = 1 TO 5
660 D$(W,Y) = B$(Z,Y)
670 NEXT Y
680 PRINT : PRINT "THE CORRECT ANSWERS ARE...."
690 FOR PQ = 1 TO 100: NEXT PQ
700 FOR J = 1 TO 5
710 IF B$(Z,J) = "XXX" OR B$(Z,J) = "X" THEN 810
720 PRINT B$(Z,J): NEXT J
730 GOTO 810
740 PRINT "RIGHT":R = R +1: FOR PQ = 1 TO 200: NEXT PQ
750 IF B$(Z,2) = "XXX" OR B$(Z,2) = "X" THEN 820
760 PRINT : PRINT "THE OTHER CHOICES WERE..."
770 FOR PQ = 1 TO 150: NEXT PQ
780 FOR J = 1 TO 5
790 IF B$(Z,J) = "XXX" OR B$(Z,J) = "X" THEN 810
800 PRINT B$(Z,J): NEXT J
810 PRINT : PRINT "PRESS THE SPACE BAR TO CONTINUE": GET A$
820 NEXT Z
830 GOSUB 1300
840 PRINT "TOTAL SCORE....."
850 PRINT INT((R/(R +W)) *100);"% RIGHT"
860 PRINT INT((W/(R +W)) *100);"% WRONG"
870 PRINT : PRINT "PRESS 'A' TO PRACTICE AGAIN WITH THE"
880 PRINT : PRINT "WORDS YOU MISSED."
890 PRINT : PRINT "PRESS 'S' TO END"
900 GET A$
910 IF A$ = "S" THEN END
920 FOR Z = 1 TO 2
930 GOSUB 1300
940 PRINT ; TAB( 13);"SECOND CHANCE"
950 PRINT "QUESTION #";Z;" OUT OF ";W
960 PRINT R;" RIGHT": PRINT W" WRONG"
970 PRINT : PRINT
980 PRINT ; TAB( 15);C$(Z)
990 PRINT
1000 GOSUB 1360
1010 PRINT : PRINT
1020 IF DE$ = "" THEN 1060
1030 FOR J = 1 TO 5
1040 IF DE$ = D$(Z,J) THEN 1140
1050 NEXT J
1060 PRINT "WRONG AGAIN!!!!"
1080 PRINT : PRINT "THE CORRECT ANSWERS ARE..."
1090 FOR H = 1 TO 5
1100 IF D$(Z,H) = "X" OR D$(Z,H) = "XXX" THEN 1220
1110 PRINT D$(Z,H)
1120 NEXT H
1130 GOTO 1220
1140 PRINT "RIGHT!!"
1150 R = R +1:W = W -1
1160 IF D$(Z,2) = "XXX" OR D$(Z,2) = "X" THEN 1220
1170 PRINT : PRINT "THE OTHER CORRECT CHOICES ARE..."
1180 FOR H = 1 TO 5
1190 IF D$(Z,H) = "XXX" OR D$(Z,H) = "X" THEN 1220
1200 PRINT D$(Z,H)
1210 NEXT H
1220 FOR H = 1 TO 1500: NEXT H
1230 NEXT Z
1250 GOSUB 1300
1260 PRINT "TOTAL SCORE....."
1270 PRINT : PRINT INT((R/(R +W)) *100);"% RIGHT"
1280 PRINT : PRINT INT((W/(R +W)) *100);"% WRONG"
1290 END
1300 FOR X = 1 TO 23
1310 VTAB X
1320 PRINT " "
1330 NEXT X
1340 VTAB 1: HTAB 1
1350 RETURN
1360 PRINT "ENTER DEFENITION ";
1370 DE$ = ""
1380 GET W$
1390 IF ASC(W$) = 13 THEN 1520
1400 IF ASC(W$) < >8 THEN 1500
1410 IF LEN(DE$) >1 THEN 1440
1420 IF LEN(DE$) = 1 THEN DE$ = "": GOTO 1450
1430 GOTO 1380
1440 DE$ = LEFT$(DE$, LEN(DE$) -1)
1450 PS = POS(0)
1460 HTAB PS
1470 PRINT " ";
1480 HTAB PS
1490 GOTO 1380
1500 IF LEN(DE$) >20 THEN PRINT "<CTRL-G><CTRL-G><CTRL-G>";: GOTO 1380
1505 PRINT W$;
1510 DE$ = DE$ +W$: GOTO 1380
1520 RETURN